<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <title>类组件</title>
  <!-- 引入 React 核心库 -->
  <script src="../js/react.development.js"></script>
  <!-- 用于支持 React操作DOM -->
  <script src="../js/react-dom.development.js"></script>
  <!-- 用于将 jsx转为js -->
  <script src="../js/babel.min.js"></script>
</head>
<body>
  <div id="root"></div>
  <script type="text/babel">
    class MyComponent extends React.Component{
      render(){
        console.log('render中的this',this); // 此 this 是 MyComponent实例对象
        return '这是一个类组件（复杂组件）'
      }
    }
    // 渲染组件到页面上
    ReactDOM.render(<MyComponent/>,document.getElementById('root'))
    /**
     * 执行了 ReactDOM.render(<MyComponent/ .....> 发生了什么
     *    1、React解析组件标签，找到了MyComponent组件。
     *    2、发现组件是使用类定义的。随后new出来该类的实例。并通过实例调用原型上的 render 方法
     *    3、将 render 返回的虚拟 DOM 转为真实 DOM。随后呈现在页面中
     */
  </script>
</body>
</html>